-- @owner: @zou_jialiang050
-- @date: 2023/2/20
-- @testpoint: create function 使用原有语句创建包含loop控制语句函数

--step1:建表插数据;expect:成功
drop table if exists t_create_function_0036 cascade;
create table t_create_function_0036(a int);
insert into t_create_function_0036 values(1),(10);

--step2:create function 使用原有语句创建包含loop控制语句函数;expect:成功
create or replace function f_create_function_0036() RETURNS SETOF t_create_function_0036 as $$
declare
   r t_create_function_0036%ROWTYPE;
begin
   for r in select * from t_create_function_0036
   loop
      return next r;
   end loop;
   return;
end;
$$ language plpgsql;
/
select f_create_function_0036();

--step3:清理环境;expect:成功
drop function if exists f_create_function_0036;
drop table if exists t_create_function_0036;